草庐IT

JavaScript typeof, null, 和 undefined

全部标签

javascript - 为什么 window 或 document 不能设置为 undefined 或 null?

这可能是个愚蠢的问题,但我还没有找到答案。为什么我们不能做到以下几点?window=undefined或document=undefined我知道这些是全局变量并且在浏览器中可用,但考虑到JavaScript的工作原理,这不可能吗?每次我们尝试访问它们时都会重新评估它们吗?我也很想知道window或document对象如何在将它们设置为随机值后保持原样...可能是number或undefined或null。 最佳答案 根据thestandard:ThewindowattributemustreturntheWindowobject'

javascript - 执行 Action 时 redux 出错 : Uncaught type error: cannot read property 'type' of undefined

刚刚接触React。我想这是一个基本问题,但我不明白为什么reducer没有被解雇或更新状态:我的HomeView.js:....const{localeChange,counter,locale}=this.propsreturn(increment(7)}>Increment.....)constmapStateToProps=(state)=>({locale:state.locale,counter:state.counter})exportdefaultconnect(mapStateToProps,{localeChange,increment})(HomeView)我的r

javascript - (React-Native) undefined 不是评估 'new FormData()' 的构造函数

在过去的两天里,我一直在努力解决这个问题,但无法弄清楚。我不明白这个错误。这是我的代码:try{varformData=newFormData();}catch(error){console.error('FormDataERROR',error);}这是错误:017-06-2113:49:02.761[error][tid:com.facebook.React.JavaScript]'FormDataERROR',{[TypeError:undefinedisnotaconstructor(evaluating'newFormData()')]line:98419,column:36

javascript - 如何解决 “cannot call method … of undefined” 错误?

functioncalcRoute(){varstart=document.getElementById("start_").value;varend=document.getElementById("end_").value;varrequest={origin:start,destination:end,travelMode:google.maps.TravelMode.DRIVING};directionsService.route(request,function(response,status){if(status==google.maps.DirectionsStatus.

javascript - 不要在 jQuery 的 $.param() 中包含空字符串或 null

我正在使用jQuery的$.param()以下列格式序列化一个对象:varqueryParams={firstNm:null,lastNm:'M',id:null,email:null}当我使用$.param(queryParams)时,我得到以下信息:firstNm=&lastNm=M&id=&email=我想要的只是:lastNm=M我希望任何null或空的参数都不会出现在输出中。这是否可以使用jQuery的$.param(),还是需要自定义序列化?编辑:这不是thisquestion的副本.该问题更多地与MediaWikiAPI相关,并且与当参数为null或空时不包括=并且仅包括

javascript - null 和 undefined 不一致比较

我很想知道为什么null==undefined返回true但是null>=undefined返回false是否包含大于运算符以不同方式强制值? 最佳答案 tl;dr在这种情况下,>=最终将两个参数都强制转换为数字:undefined被强制转换为NaN而null被强制为0,这不相等。对于==,规范明确定义null==undefined为true。事实上,在这两种情况下,值都会被强制转换(至少在某种意义上-==的情况很特殊)。让我们在规范的帮助下一次考虑它们。algorithm>=运算符使用"AbstractRelationalComp

javascript - 错误 "Uncaught TypeError: Cannot read property ' __count' of undefined"in grid datasource

我最近更新了我的jQuery和KendoUI版本。现在使用jQuery1.12.13和KendoUI2016.3.914(不确定它在他们的公共(public)网站上对应的版本,但可能在R32016左右)。似乎kendo或jQuery对数据格式变得更加严格。我有一个带有数据源的剑道UI网格,该数据源具有type:"json"。这在早期版本中有效但不再适用-它给出了警告:未知的数据源传输类型“json”。验证该类型的注册脚本是否包含在页面上的KendoUI之后。所以我查看了文档并将类型更改为odata。这给出了一个错误:VM94003:3未捕获类型错误:无法读取未定义的属性“__count

javascript - 为什么定义了 document.all 但 typeof document.all 返回 "undefined"?

这个问题在这里已经有了答案:Whyisdocument.allfalsy?(4个答案)关闭6年前。我在研究JavaScript的typeof运算符时,偶然发现了以下怪异之处:ExceptionsAllcurrentbrowsersexposeanon-standardhostobjectdocument.allwithtypeUndefined.typeofdocument.all==='undefined';Althoughthespecificationallowscustomtypetagsfornon-standardexoticobjects,itrequiresthoset

javascript - 使用 Object.create(null) 创建空对象的影响和好处

首先,我制作了一个快速的jsperf测试用例来展示显而易见的东西:Object.create(null)比使用{}语法创建对象要慢得多。http://jsperf.com/js-object-creation-null-proto但考虑到这一事实,在优化和性能方面,前一种情况有时是一个很好的选择吗?换句话说,操作最轻量级的js对象是否可以充分提高性能,以至于在某些情况下使用它成为合理的选择。我指的是您要大量访问对象属性或大量使用forin循环的情况。在库中使用这种方法是否风险太大,人们可能会处理这些不拥有标准Object原型(prototype)带来的标准属性的对象?另外,你知道另一种

javascript - Angular 5 : ng build - -prod fails due to clean-css: Cannot read property 'line' of undefined

我的应用在Angular5.2.6下。ngserve一切正常,但是当运行ngbuild--prod时,它需要一段时间,然后才会失败。这些错误似乎与clean-css操作有关。错误跟踪:92%chunkassetoptimization/home/khalidvm/Desktop/Workspace/Front/frontend_v2/node_modules/clean-css/lib/reader/input-source-map-tracker.js:37if(originalPosition.line===null&&line>1&&selectorFallbacks>0){^T